<?php
include_once("../inc/common.php");

// Controle de acesso /////////////////////////////////////////////
Security::verifyUser("");

// Tratamento de campos ///////////////////////////////////////////
$id = Param::getInt("id"); // captura a chave
if ($id > 0) { // edição
	$sql = "SELECT * FROM turma WHERE id_turma=" . $id;
	$row = DBUtils::getrow($sql);
	if (sizeof($row) > 0) {
		$bd_id_turma = $row["id_turma"];
		$bd_id_curso = $row["id_curso"];
		$bd_id_instrutor = $row["id_instrutor"];
		$bd_dt_inicio = Dates::format($row["dt_inicio"]);
		$bd_nro_carga_horaria = $row["nro_carga_horaria"];
		$bd_nro_horas_dia = $row["nro_horas_dia"];
	}
}

// Prepara lista de dados /////////////////////////////////////////
$sqlCurso = "SELECT id_curso as id, txt_curso as val FROM curso ORDER BY txt_curso";

// Botões /////////////////////////////////////////////////////////
$button = new Button();
$button->add("btnSalvar", "Salvar");
$button->add("btnFechar", "Fechar");

// Abas ///////////////////////////////////////////////////////////
$tabs = new Tabs();
$tabs->add("Geral", true);

// Formulário
$form = new Form("frm", "../mod_turma/turma-controller.php?action=salvar", "post");

$form->addHidden("f_id", $bd_id_turma); // chave primária
$form->addHidden("page", Param::get("page")); // número da página que chamou

$form->addField("* Curso: ", Field::listbox("f_id_curso", $sqlCurso, $bd_id_curso, "- Selecione o curso -"));
$form->addField("* Instrutor: ", Field::memoryListbox("f_id_instrutor", $bd_id_instrutor, "0"));
$form->addField("* Data de início: ", Field::text("f_dt_inicio", $bd_dt_inicio, 10, 11));
$form->addField("* Carga horária: ", Field::number("f_nro_carga_horaria", $bd_nro_carga_horaria, 3, 3)." horas");
$form->addField("* Horas por diárias: ", Field::number("f_nro_horas_dia", $bd_nro_horas_dia, 2, 2)." horas");

$form->setComment("(*) Campos obrigatórios");
?>
<!DOCTYPE html>
<html>
    <head>
		<?php
		Element::headBlock();
		?>
		<script type="text/javascript">
			$(document).ready(function(){

				// mapeamento de botões
				$("#btnSalvar").click(function() {
					if ($("#frm").valid()) {
						$.post("../mod_turma/turma-controller.php?action=salvar", $("#frm").serialize(), salvarCallback, "json");
					}
				});

				$("#btnFechar").click(function() {
					location = "../mod_turma/turma-lista.php";
				});

				// prepara campos
				$("#f_dt_inicio").datepicker();

				// prepara máscaras
				$("#f_dt_inicio").mask("99/99/9999");

				// foco
				$("#f_id_curso").focus();

				// prepara validações de campos
				$("#frm").validate({
					rules: {
						f_dt_inicio: { required: true, brazilianDate: true }
					},
					messages: {
						f_dt_inicio: { required: "Informe uma data válida" }
					}
				});

				// carrega listbox de instrutores
				$("#f_id_curso").change(function() {
					$.post("../mod_turma/turma-controller.php?action=carregainstrutores",
					{ "chave": $("#f_id_curso").val() },
					function(data){
						$("#f_id_instrutor").html(data.valor);
					},
					"json");
				});

				// inicializa listbox de instrutores
				if ($("#f_id_curso").val() > 0) {
					$("#f_id_curso").change();
				}
			});

			function salvarCallback(data) {
				if (data.ok == "1") {
					location = "../mod_turma/turma-lista.php";
				} else {
					Messages.error(data.erro);
				}
			}

		</script>
    </head>
    <body>
		<div id="container">
			<?php Element::header("Edição de Turma"); ?>
			<div id="acoes"><?php $button->writeHTML(); ?></div>
			<div id="dados">
				<?php
				$tabs->writeHTML();
				Messages::handleMessages();
				$form->writeHTML();
				?>
			</div>
		</div>

    </body>
</html>
